Method for performing harq using polar code

ABSTRACT

Provided are a method and an apparatus for performing a HARQ based on a polar code in a wireless communication system. The apparatus transmits multiple first output bits, which are generated from multiple first input bits, to a receiver. Upon receiving a retransmission request, the apparatus generates multiple second output bits from multiple second input bits. The apparatus selects multiple third output bits from among the multiple second output bits, and transmits the selected multiple third output bits to the receiver. Bits, which are encoded differently from the multiple first output bits among the multiple second output bits, are preferentially selected as the multiple third output bits.

BACKGROUND OF THE INVENTION Field of the invention

The present invention relates to wireless communications. Moreparticularly, the present invention relates to a method for performingHARQ using polar codes.

Related Art

It is important to transfer data without error from a transmitter to areceiver in a data communication system. In 1948, Shannon mathematicallyinvestigated a limitation of a maximum data transfer rate at which datacan be transferred without error, which is called channel capacity. Inorder to implement a real communication system close to the channelcapacity, an error correction code having implementable complexity mustexist. Several types of error correction codes have been developed since1948, and turbo codes and low density parity check (LDPC) or the likehave been developed relatively recently as error correction codes whichexhibit performance close to channel capacity of Shannon. However,although these codes exhibit performance close to the channel capacityof Shannon, accurate channel capacity is not achieved. A polar code hasrecently been developed as a code which completely satisfies the channelcapacity mathematically while satisfying such a problem.

Hybrid Automatic Repeat request (HARQ) corresponds to a technique thatcan recover an error by requesting a retransmission, when a packethaving an error is receiver. Various studies have been conducted on apolar coding-based HARQ scheme which combines polar coding and HARQ.However, according to the schemes proposed up to now, the polar code hasnot been constructed to improve information of channel polarizationwhich is basic concept of polar coding.

SUMMARY OF THE INVENTION Technical Objects

This specification provides a method and apparatus for performing HARQbased on a polar code in a wireless communication system.

Technical Solutions

According to an aspect, provided herein is a method for performing aHybrid Automatic Repeat reQuest (HARQ) based on a polar code. The methodmay include the steps of acquiring, by a transmitter, a plurality offirst input bits being inputted to a first encoder from a plurality ofmother bits having at least one information bit and at least one frozenbit, transmitting, by the transmitter, a plurality of first output bitsbeing generated from the first input bits by the first encoder to areceiver, receiving, by the transmitter, a re-transmission request forthe plurality of mother bits from the receiver, acquiring, by thetransmitter, a plurality of second input bits being inputted to a secondencoder from the plurality of mother bits, generating, by thetransmitter, a plurality of second output bits being generated from thesecond input bits by the second encoder, selecting, by the transmitter,a plurality of third output bits from the plurality of second outputbits, transmitting, by the transmitter, the plurality of third outputbits to the receiver.

The plurality of second input bits may include at least one informationbit being included in the plurality of first input bits.

Among the plurality of second output bits, bits being encodeddifferently from the plurality of first input bits may be preferentiallyselected as the third output bits.

According to another aspect, provided herein is a device for performinga Hybrid Automatic Repeat request (HARQ) based on a polar code, whichincludes a radio frequency (RF) unit transmitting and receiving radiosignals, and a processor controlling the RF unit and including a firstencoder and a second encoder. The processor may be configured to acquirea plurality of first input bits being inputted to a first encoder from aplurality of mother bits having at least one information bit and atleast one frozen bit, to transmit a plurality of first output bits beinggenerated from the first input bits by the first encoder to a receiver,to receive a re-transmission request for the plurality of mother bitsfrom the receiver, to acquire a plurality of second input bits beinginputted to a second encoder from the plurality of mother bits, togenerate a plurality of second output bits being generated from thesecond input bits by the second encoder, to select a plurality of thirdoutput bits from the plurality of second output bits, and to transmitthe plurality of third output bits to the receiver.

EFFECTS OF THE INVENTION

While performing the HARQ, the error likelihood may be reduced, and thenumber of re-transmission sessions may be reduced. Additionally, diversepolar codes having reduced calculation (or computation) are proposed tobest fit the computing power of a device (or apparatus).

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates an example of Method 1.

FIG. 2 illustrates an example of Method 2.

FIG. 3 illustrates an example of Method 3.

FIG. 4 is a graph showing a comparison between Method 2 and Method 3 inlight of performance and efficiency.

FIG. 5 is a graph consecutively showing tradeoff relations betweenperformance and efficiency in Method 2 and Method 3.

FIG. 6 illustrates a method having optimal performance and efficiency.

FIG. 7 is a graph showing a comparison between Method 2, Method 3, andan optimal method in light of performance and efficiency.

FIG. 8 illustrates an example of an optimal transmission method in caseof a mother code having a random length (Step 1).

FIG. 9 illustrates an example of an optimal transmission method in caseof a mother code having a random length (Step 2 and Step 3).

FIG. 10 illustrates an example of an optimal transmission method in caseof a mother code having a random length (Step 4).

FIG. 11 illustrates an example of an optimal transmission method in caseof a mother code having a random length (Step 5). This diagramillustrates an exemplary XOR operation between generator matrices and anexemplary OR operation for each column according to an exemplaryembodiment of this specification.

FIG. 12 is a graph showing a comparison between Method 2, Method 3, andan optimal method having an optimal tradeoff in light of performance andefficiency.

FIG. 13 illustrates an example of a suboptimal transmission method incase of a mother code having a random length (Step 4).

FIG. 14 illustrates an example of a suboptimal transmission method incase of a mother code having a random length (Step 5).

FIG. 15 illustrates an example of a suboptimal transmission methodselecting 3 rows from 5 rows.

FIG. 16 illustrates an example of a suboptimal transmission methodselecting 3 rows from 5 rows.

FIG. 17 illustrates an example of a suboptimal transmission methodselecting 3 rows from 5 rows.

FIG. 18 illustrates an example of a suboptimal transmission methodselecting n number of rows from ñ number of rows.

FIG. 19 illustrates a tree structure for efficiently selecting a column.

FIG. 20 illustrates a tree structure for efficiently selecting row and acolumn simultaneously.

FIG. 21 is a block diagram illustrating a wireless communication systemin which the present disclosure is implemented.

DESCRIPTION OF EXEMPLARY EMBODIMENTS

The most essential object of digital communication is to transmitinformation that is configured of digital bits from a transmitting endto a receiving end as fast as possible without any error. The two mainmethods that can be used in order to perform such error-freetransmission of information correspond to an Automatic Repeat Request(ARQ) method and an error correction code method. Firstly, the ARQmethod operates as described below. When a transmitting end initiallytransmits an information packet, a cyclic redundancy check (CRC) isincluded in the transmitted information packet. Thereafter, a receivingend checks whether or not an error exists in the received packet throughthe CRC, and, then, the receiving end notifies the checked result to thetransmitting end through a feedback channel. If the transmitting end isnotified by the receiving end that the packet previously transmitted bythe transmitting end has been received without error, the transmittingend newly transmits a next packet. Conversely, if the transmitting endis notified that an error has occurred in the previously transmittedpacket, the transmitting end re-transmits the previously transmittedpacket in which the error has occurred.

The other main method that is used for overcoming errors occurring in achannel corresponds to the error correction code method. An errorcorrection code that can achieve a channel capacity for a binaryinput/output channel has been developed very recently, and such errorcorrection code is referred to as a polar code. If a polar code is used,channel polarization occurs. And, as a result, only two types of bitchannels exist. Bit channels belonging to a first group have excellentquality (i.e., error hardly occurs), and bit channels belonging to aremaining group have very poor quality (i.e., error almost alwaysoccurs). In polar coding, information bits are transmitted through thebit channels having excellent quality, and bits that have been notifiedin advance to the transmitting/receiving ends are transmitted throughthe bit channels having very poor quality. Herein, such bits that havebeen notified in advance are referred to as frozen bits. As describedabove, a process of differentiating bits channels having excellentquality from bit channels having very poor quality and allocatinginformation bits only to positions located in the bit channels havingexcellent quality is referred to as an optimal information bitallocation.

An HARQ method corresponds to a combination of the ARQ method and theerror correction code method. Various types of HARQ methods exist inaccordance with the error correction code that is used. The HARQ methodthat is considered in the present invention corresponds to a polar codebased HARQ method consisting of a combination of a polar code that isknown to achieve channel capacity and ARQ. In case of implementing thepolar code based HARQ, at first, a mother code having a low transmissionrate is configured. Thereafter, the mother code is punctured so as toconfigure multiple packets, and, then, the packets are transmitted onepacket at a time. At this point, two different methods exist dependingupon whether puncturing is to be performed after performing an optimalinformation bit allocation for the mother code or whether puncturing isperformed on the mother code and then optimal information bits areallocated for a first packet afterwards. Hereinafter, the first methodwill be referred to as Method 1, and the second method will be referredto as Method 2.

FIG. 1 illustrates an example of Method 1. And, FIG. 2 illustrates anexample of Method 2. Referring to FIG. 1 and FIG. 2, C(W_(i)) indicatesa channel capacity for an i^(th) bit channel. W indicates a physicalchannel. U_(i) indicates input bits, and information bits or frozen bitsare used herein. X_(i) indicates coded bits, and such coded bits aretransmitted through the physical channel W. And, Y_(i) indicates asignal that is received by the receiving end.

In Method 1, an optimal information bit allocation for a length-8 mothercode is first executed. In this case, information bits are allocated for4 bit channels each having a large channel capacity C(W_(i)), and frozenbits are allocated to the remaining bit channels. More specifically,information bits are allocated for U₈, U₇, U₆, and U₄, and frozen bitsare allocated for the remaining 4 input bits. Thereafter, puncturing isperformed for the 4 bit channels, thereby generating a first packet. Inthe HARQ, since all of the information bits that are transmitted shallbe included in the first packet, the first packet is configured toinclude (U₈,Y₈), (U₇, Y₇), (U₆, Y₆), and (U₄, Y₄).

In Method 2, puncturing is first performed without any allocation of theinformation bits. The method of obtaining an optimal polar code bypuncturing 4 bits in the length-8 mother code punctures the last 4 bits.More specifically, the first packet is given as (U₈, Y₈), (U₇, Y₇), (U₆,Y₆), and (U₅, Y₅). Thereafter, the optimal information bit allocation isperformed on the first packet. In the example given in FIG. 2, since 4information bits are allocated, information bits are allocated for allof the first packet. In other words, information bits are allocated forU₈, U₇, U₆, and U₅, and frozen bits are allocated for the remaining 4input bits.

Each of Method 1 and Method 2 has its advantages and disadvantages.According to Method 1, when transmitting multiple packets that aregenerated by puncturing the mother code, in a case where a large numberof packets are transmitted and such transmitted packets are combined (oraggregated) in the receiving end and then decoded, its performancebecomes nearly optimal. However, since the allocation of the informationbits has been optimized in light of the mother code and not the initialpacket, for the initial packet or the earlier packets, the performancebecomes less optimal. Additionally, since information bits have alreadybeen allocated for the mother code, when performing puncturing in orderto obtain multiple packets, since a condition necessarily requiring theinformation bits, which were allocated in advance, to be included shouldbe satisfied, it is difficult to obtain an optimal packet by performingoptimal puncturing. For example, when referring to Method 1 of FIG. 1,information bits are first allocated to optimal positions for a length-8mother code. Then, in order to obtain a first packet, 4 input/outputbits are punctured, thereby obtaining the first packet. However, due tothe condition requiring the first packet to necessarily include thealready given 4 information bits, an optimal polar code packet having alength of 4 cannot be obtained. As described above, the length-4 optimalpolar code packet should correspond to a packet that includes the last 4input/output bits.

Method 2 has advantages and disadvantages that are opposite to those ofMethod 1. Method 2 is advantageous in that, since the optimization ofthe information bit allocated is carried out for the first packet,optimal performance may be ensured when transmitting the first packet.Additionally, when performing puncturing for obtaining the first packet,since information bits are not allocated in advance for the mother code,optimal puncturing may be performed. For example, referring to the caseof Method 2 shown in FIG. 2, the first packet corresponds to a packetthat includes the last 4 input/output bits, and this corresponds to apacket having the optimal length of 4. However, Method 2 isdisadvantageous in that, since the optimization of the information bitallocation is carried out for the first packet, as a larger number ofpackets are transmitted, i.e., as the mother code becomes closer, theinformation bit allocation is spaced further apart from the optimalposition. Therefore, although Method 2 shows an excellent performance atthe beginning, as a larger number of packets are being transmitted, theperformance of Method 2 becomes less optimal.

Hereinafter, a method that is proposed in order to resolve thedisadvantages of Method 1 and Method 2 will be described in detail.Firstly, in order to resolve the disadvantages (or problems) of Method 1and Method 2 at the same time, a method wherein the allocation of theinformation bit is excellent for the first packet as well as for thesubsequent packet is proposed. Secondly, a method having an optimaltradeoff in light of a decoding error likelihood and transmissionefficiency is proposed. And, thirdly, a method having a suboptimaltradeoff in light of a decoding error likelihood having a reduced levelof complexity and transmission efficiency is proposed.

Section 1: ‘Method 3’, a Method in which Information Bit Allocation forBoth First Packet and Second Packet is Optimal

In order to simplify the discussions on the method proposed in thepresent invention, a case where the mother code is punctured and dividedinto only two packets (a first packet and a second packet) will beconsidered herein. In an actual HARQ, the mother code may be puncturedto two or more packets. However, the discussion on such case will bemade later on in Section 3. In this section (Section 1) and Section 2,only the case where the mother code is configured of two packets will beconsidered.

The method that is first proposed in this section will be referred to asMethod 3, and the object of this method is to allow the allocation ofthe information bits to be optimal for both the first packet and thesecond packet.

Hereinafter, the mother code (or mother bit sequence) includes aplurality of mother bits. The plurality of mother bits includes at leastone information bit and at least one frozen bit. A mother encoder isused for encoding the mother code. An encoder that is used during aninitial transmission of the HARQ is referred to as a first encoder, andan encoder that is used during a re-transmission of the HARQ is referredto as a second encoder. The first encoder is obtained by puncturing themother encoder, and the second encoder corresponds to the mother encoderitself, or the second encoder is obtained by puncturing the motherencoder. Bits being inputted to each encoder are referred to as inputbits, and bits being inputted to each encoder are referred to as outputbits.

Firstly, the first packet (input bits of the first encoder) isconfigured by puncturing the mother code without performing anyallocation of the information bits, and, then, information bits areoptimally allocated for the first packet. Thereafter, when transmittingthe second packet, the object of the present invention is to allocateoptimal information bits. In order to do so, information bits are alsooptimally allocated for the second packet (input bits of the secondencoder). Afterwards, among the reception signals of the first packet,only the signals that can be immediately re-used by the receiving endmay be used for decoding the mother code. At this point, the remainingsignals that are additionally needed are re-transmitted by thetransmitting end. Hereinafter, the signals that can be immediatelyre-used and the remaining signals that are additionally needed aredefined as described below.

For example, it will be given that a length-8 mother code is considered,and that the mother encoder uses a generator matrix G₈, which is shownbelow.

$\begin{matrix}{G_{8} = \begin{bmatrix}1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\1 & 1 & 0 & 0 & 0 & 0 & 0 & 0 \\1 & 0 & 1 & 0 & 0 & 0 & 0 & 0 \\1 & 1 & 1 & 1 & 0 & 0 & 0 & 0 \\1 & 0 & 0 & 0 & 1 & 0 & 0 & 0 \\1 & 1 & 0 & 0 & 1 & 1 & 0 & 0 \\1 & 0 & 1 & 0 & 1 & 0 & 1 & 0 \\1 & 1 & 1 & 1 & 1 & 1 & 1 & 1\end{bmatrix}} & \left\lbrack {{Equation}\mspace{14mu} 1} \right\rbrack\end{matrix}$

When input signals for the mother code are given as U′=[U₁′, U₂′, . . ., U₈′], the coded signals X′=[X₁′, X₂′, . . . , X₈′] are given as shownbelow.

X′=U′G₈   [Equation 2]

Signals that are received when X′ is transmitted through channel W aregiven as Y′=[Y₁′, Y₂′, . . . , Y₈′]. Then, by selecting (i.e., bypuncturing) a 4×4 matrix corresponding to a lower right portion of G₈, agenerator matrix G₄ of a length-4 polar code is obtained as shown below.The first encoder uses a generator matrix G₄.

$\begin{matrix}{G_{4} = \begin{bmatrix}1 & 0 & 0 & 0 \\1 & 1 & 0 & 0 \\1 & 0 & 1 & 0 \\1 & 1 & 1 & 1\end{bmatrix}} & \left\lbrack {{Equation}\mspace{14mu} 3} \right\rbrack\end{matrix}$

When input signals for the first packet are given as U=[U₁, U₂, U₃, U₄],the coded signals X=[X₁, X₂, X₃, X₄] are given as shown below.

X=UG₄   [Equation 4]

Signals that are being received when X is transmitted through channel Ware referred to as Y=[Y₁, Y₂, Y₃, Y₄]. In Method 3, which is proposed inthe present invention, optimal information bit allocation is performedon U′ and U. In a case where 4 information bits are allocated, theoptimal method is as shown below.

U=[d ₁ ,d ₂ ,d ₃ ,d ₄]

U′=[0,0,0,d ₁0,d ₂ ,d ₃ ,d ₄].   [Equation 5]

After allocating the above-described information bits, X′ and X arecalculated by X=U′G₈ and X=UG₄. Thereafter, comparison is made betweenX₅′ and X₁, so as to determine whether X₅′ and X₁ are equal to ordifferent from one another. Similarly, comparison is made between X₆′and X₂, X₇′ and X₃, and X₈′ and X₄. The reason for performing suchcomparison is because G₄ is obtained by puncturing the lower right 4×4portion of G₈. If X₅′=X₁, Y₅′=Y₁ may be used, and, herein, Y₁ of thefirst packet corresponds to a signal that can be re-used in the mothercode. If X₅′≠X₁, Y₁ of the first packet corresponds to a signal thatcannot be re-used in the mother code. By using the above-describedmethod, it may be determined whether or not Y₂, Y₃, and Y₄ are signalsthat can be re-used. In a case where the given U and U′ are used, Y₁ isgiven as a signal that cannot be re-used, and Y₂, Y₃, and Y₄ are givenas signals that can be re-used. In this case, Y₂, Y₃, and Y₄ arerespectively used as Y₆′, Y₇′, and Y₈′ of the mother code. Signals thatare additionally needed in order to decode the mother code correspond toY₁′, Y₂′, Y₃′, Y₄′, and Y₅′. Therefore, in the second packet, thetransmitter transmits X₁′, X₂′, X₃′, X₄′, and X₅′.

FIG. 3 illustrates an example of Method 3.

In the first packet, after coding 4 information bits data 1, data 2,data 3, and data 4 by using the length-4 polar code, the coded bits Y₁,Y₂, Y₃, and Y₄ are transmitted. In case the receiving end decodes suchpackets without any error, an ACK is transmitted, and, in case erroroccurs during the decoding process, a NACK is transmitted. In case thetransmitting end receives the NACK through a feedback channel, thetransmitting end performs re-transmission of the mother code.

In order to perform the re-transmission, 4 information bits are inputtedto the second encoder in positions where the channel capacity or thedecoding reliability is maximized In case 4 information bits aretransmitted by a length-8 polar code, the optimal bit positions are U₄,U₆, U₇, and U₈. Then, 0, which corresponds to a frozen bit, is allocatedto each of the remaining 4 input bit positions. When a comparison ismade between the signals that are received in the first packet Y₁ , Y₂,Y₃, and Y₄ and the signals that are received in the second packet Y₁′,Y₂′, Y₃′, Y₄′, Y₅′, Y₆′, Y₇′, and Y₈′, it will be apparent that Y₂=Y₆′,Y₃=Y₇′, and Y₄=Y₈′. Therefore, even if the receiver does not receive thelast three signals of the second packet, the receive may re-use thepreviously received reception signals of the first packet. In order toperform decoding of the length-8 polar code, the receiver needs theremaining 5 reception signals Y₁′, Y₂′, Y₃′, Y₄′, and Y₅′. For this, thetransmitter transmits the 5 coded bits X₁, X₂, X₃, X₄, and X₅.

When transmitting the second packet, bits that are encoded by using thesame method as the first packet are preferentially excluded from thesecond packet. Bits that are encoded by using a method being differentfrom the first packet are preferentially allocated to the second packet.Based on the above-described generator matrix, the encoding processrefers to a process of performing an XOR calculation on the input bitsof the encoder.

A method of preferentially selecting, among the plurality of secondoutput bits, bits being processed with XOR operation that are differentfrom the plurality of first bits or bits being processed with a numberof XOR operations that is different from the plurality of first bits.Herein, it is given that, among the output bits of the second encoder,the output bits of the first encoder are the same as the bits beingprocessed with the XOR operation, and that the bits being processed withthe same number of XOR operations have been identically encoded. Herein,it is also given that, among the output bits of the second encoder, theoutput bits of the first encoder are not the same as the bits beingprocessed with the XOR operation, or that the bits being processed withthe different number of XOR operations have been differently encoded.

Hereinafter, a comparison will be made between Method 3 of FIG. 3 andMethod 1 of FIG. 1. Although Method 1 is disadvantageous in that thepolar code in the first packet does not correspond to the optimallength-4 polar code, in Method 3, the optimal length-4 polar code isconfigured in the viewpoint of the first packet. Additionally, in theviewpoint of the mother code corresponding to after the transmission ofthe second packet, in light of the characteristic of information bitsbeing optimally allocated, Method 1 and Method 3 are the same. Acomparison between Method 3 and Method 2 will be made as describedbelow. Both Method 2 and Method 3 configure an optimal length-4 mothercode in the viewpoint of the first packet. Additionally, although Method2 is disadvantageous in that information bits are not optimallyallocated in the viewpoint of the mother code corresponding to after thetransmission of the second packet, in Method 3, the information bits areoptimally allocated also in the viewpoint of the mother code.

As described above, Method 3 has both the advantages of Method 1 and theadvantages of Method 2. However, Method 3 is disadvantageous in that alarger number of coded bits need to be transmitted from the secondpacket. For example, in Method 1 of FIG. 1 and Method 2 of FIG. 2, only4 coded bits needed to be transmitted from the second packet, whereas,in Method 3 of FIG. 3, 5 coded bits are transmitted from the secondpacket. This is because, in Method 3, among the 4 received signals ofthe first packet, the second packet is re-used in only 3 signals. In thepresent invention, a ratio of the packets that are re-used is referredto as efficiency, and, in the example of FIG. 3, the efficiency is givenas f=75%.

FIG. 4 is a graph showing a comparison between Method 2 and Method 3 inlight of performance and efficiency. In Method 2, since all 4 receivedsignals of the first packet are re-used, Method 2 has a maximumefficiency of 100%, in the viewpoint of the mother code corresponding toafter the transmission of the second packet, since the bit allocationdoes not correspond to the optimal bit allocation, the performance isdegraded. On the other hand, in Method 3, although the efficiency marksa low level of 75%, since the bit allocation is optimal in theviewpoints of both the first packet and the mother code, maximumefficiency is achieved. In the above-described example, a simple casewhere the first packet is configured of 4 bits and the mother code isconfigured of 8 bits has been considered. Therefore, a value that may begiven as the efficiency level is equal to one of 100%, 75%, 50%, 25%,and 0%. If the length of the first packet and the length of the mothercode become longer, the variation in the values that may be given as theefficiency level may become more consecutive.

FIG. 5 is a graph consecutively showing tradeoff relations betweenperformance and efficiency in Method 2 and Method 3. Each of Method 2and Method 3 has a tradeoff that is consecutively shown betweenperformance and efficiency.

Section 2: An Optimal Transmission Method having an Optimal Tradeoff inLight of Efficiency and Error Performance

In the previous section, Method 3 was proposed, and this was comparedwith Method 2. Each of Method 2 and Method 3 has a tradeoff in light oferror performance and efficiency. And, proposed herein is a method forenhancing such tradeoff.

2.1. An Optimal Transmission Method in a Case where the Mother Code hasa Length of 8

By reconsidering the case where a length-4 first packet is obtained bypuncturing the length-8 mother code, which was considered in Section 1,an optimal method having optimal performance in light of both efficiencyand error likelihood is proposed herein.

FIG. 6 illustrates a method having optimal performance and efficiency.In this method, the most important idea is to use the equation of X₁=X₁′(eventually Y₁=Y₁′).

This may be verified (or checked) as described below. In the firstpacket, it is given that X₁=data 1+data 2+data 3+data 4. Herein, ‘+’corresponds to a modulo 2 arithmetic. In the second packet, it is giventhat X₁′=U1+U2+U3+U4+U5+U6+U7+U8. Herein, however, since each of U1, U2,U3, and U5 corresponds to a frozen bit 0, it will be given thatX₁′=U4+U6+U7+U8=data 1+data 2+data 3+data 4.

The reason for the above-described equation may be indicated in the formof an equation by using a generator matrix G of a polar code. In theoptimal method, the generator matrix G₄ of the length-4 polar codecorresponding to the first packet and the generator matrix G₈ of thelength-8 polar code corresponding to the mother code are given asdescribed in the previous section. Additionally, a coded bit vector X ofthe first packet and a coded vector X′ of the mother code are given asshown below.

X=[X ₁ ,X ₂ ,X ₃ ,X ₄]=UG ₄

X′=[X ₁ ^(′) ,X ₂ ^(′) ,X ₃ ^(′) ,X ₄ ^(′) ,X ₅ ^(′) ,X ₆ ^(′) ,X ₇ ^(′),X ₈ ^(′)]=U′G ₈   [Equation 6]

Herein, however, U and U′ indicate source information bit vectors forthe first packet and the mother code as shown below.

U=[U ₁ ,U ₂ ,U ₃ ,U ₄]

U′=[U ₁ ^(′) ,U ₂ ^(′) ,U ₃ ^(′) ,U ₄ ^(′) ,U ₅ ^(′) ,U ₆ ^(′) ,U ₇ ^(′),U ₈ ^(′)].   [Equation 7]

In a case where 4 information bits are transmitted, the optimal bitallocation is given as shown below.

U=[d ₁ ,d ₂ ,d ₃ ,d ₄]

U′=[0,0,0,d ₁0,d ₂ ,d ₃ ,d ₄].   [Equation 8]

As a result, the coded bit vectors are given as shown below.

$\begin{matrix}{\begin{matrix}{X =} & {{\left\lbrack {X_{1},X_{2},X_{3},X_{4}} \right\rbrack = {UG}_{4}}} \\{=} & {\left\lbrack {{d_{1} + d_{2} + d_{3} + d_{4}},{d_{2} + d_{4}},{d_{3} + d_{4}},d_{4}} \right\rbrack}\end{matrix}\begin{matrix}{X^{\prime} =} & {{\left\lbrack {X_{1}^{\prime},X_{2}^{\prime},X_{3}^{\prime},X_{4}^{\prime},X_{5}^{\prime},X_{6}^{\prime},X_{7}^{\prime},X_{8}^{\prime}} \right\rbrack = {U^{\prime}G_{8}}}} \\{=} & {\left\lbrack {{d_{1} + d_{2} + d_{3} + d_{4}},{d_{1} + d_{2} + d_{4}},{d_{1} + d_{3} + d_{4}},} \right.} \\ & \left. {{d_{2} + d_{3} + d_{4}},{d_{2} + d_{4}},{d_{3} + d_{4}},d_{4}} \right\rbrack\end{matrix}} & \left\lbrack {{Equation}\mspace{14mu} 9} \right\rbrack\end{matrix}$

Eventually, it will be apparent that the following relationship can beestablished.

X₁=X₁ ^(′)

X₂=X₆ ^(′)

X₃=X₇ ^(′)

X₄=X₈ ^(′)  [Equation 10]

FIG. 7 is a graph showing a comparison between Method 2, Method 3, andan optimal method in light of performance and efficiency.

The results of the comparison between Method 2, Method 3, and theoptimal method, which is proposed in this section, in light ofperformance and efficiency of the error likelihood are given as shown inFIG. 7.

2.2. An Optimal Transmission Method in a Case where the Mother Code hasa Random Length

Herein, the generator matrix of the mother code is referred to as matrixG_(ñ) having a size of ñ×ñ, and the generator matrix of the codecorresponding to the first packet, which is obtained by puncturing thegenerator matrix G_(ñ) of the mother code, is referred to as matrixG_(n) having a size of n×n. Hereinafter, the following sets will bedescribed in detail as listed below.

Φ_(all) ^(init): This indicates an index set of all rows of thegenerator matrix G_(n) of a code being transmitted through the firstpacket. Generally, this is given as Φ_(all) ^(init)={1,2, . . . , n}.

Φ_(all): This indicates a set indicating indexes of row belonging tothat are Φ_(all) ^(init) positioned within G_(ñ.) Generally, this isgiven as Φ_(all)=(ñ−n)+Φ_(all) ^(init)={(ñ−n)+1, (ñ−n)+2, . . . , ñ}.

Φ_(zero)=[ϕ₁ ^(z), . . . , ϕ_(n) _(z) ^(z)]: This indicates a set ofrows corresponding to the frozen bits among the rows belonging toΦ_(all).

Φ_(info): This indicates a set of rows corresponding to the informationbits among the rows belonging to Φ_(all).

Φ_(info) ^(′)=[ϕ₁ ^(′), . . . , ϕ_(L′) ^(′)]: Among the information bitscorresponding to the rows belonging to Φ_(info), this indicates a set ofrows always being used in the second packet in order to transmitinformation bits when the information bits are allocated by using anoptimal method.

Φ_(info) ^(″)=[ϕ₁ ^(″), . . . , ϕ_(L″) ^(″)]: Among the information bitscorresponding to the rows belonging to Φ_(info), this indicates a set ofrows that may not be used in the second packet in order to transmitinformation bits when the information bits are allocated by using anoptimal method.

Ψ=[ψ₁, . . . , ψ _(L) ]: In the viewpoint of the mother code, thisindicates a set of rows corresponding to information bits having a biterror likelihood that is lower than or equal to the information bitscorresponding to the rows belonging to Φ_(info).

For example, as shown in the example that is presented above, whenassuming a case where a first packet having a length of 4 is configuredfrom the length-8 mother code and 4 information bits are transmitted,the above-described sets are given as shown below.

Φ_(all) ^(init)=[1, 2, 3, 4]

Φ_(all)=(8−4)+Φ_(all) ^(init)=[5, 6, 7, 8]

Φ_(zero)=∅

Φ_(info)=[5, 6, 7, 8]

Φ_(info) ^(′)=[5 ]

Φ_(info) ^(″)=[6, 7, 8]

Ψ=[4, 5]  [Equation 11]

FIG. 8 illustrates an example of an optimal transmission method in caseof a mother code having a random length (Step 1). More specifically,this diagram illustrates a set of rows that are selected from agenerator matrix for a code corresponding to the first packet and agenerator matrix for a mother code.

FIG. 9 illustrates an example of an optimal transmission method in caseof a mother code having a random length (Step 2 and Step 3). Morespecifically, the diagram illustrates rows that are selected for agenerator matrix for a mother code. And, herein, the selected rows areused to replace the rows of the generator matrix for the mother code.

FIG. 10 illustrates an example of an optimal transmission method in caseof a mother code having a random length (Step 4). More specifically,this diagram illustrates an example of creating a generator matrixhaving a size of n×n by selecting n number of columns from a generatormatrix having a size of n×ñ according to an exemplary embodiment of thepresent invention.

FIG. 11 illustrates an example of an optimal transmission method in caseof a mother code having a random length (Step 5). More specifically,this diagram illustrates an exemplary XOR operation between generatormatrices and an exemplary OR operation for each column according to anexemplary embodiment of this specification.

Hereinafter, the optimal transmission method may be obtained asdescribed below.

(Step 1): Sets are determined as Φ_(all) ^(init), Φ_(all), Φ_(zero),Φ_(info), Φ_(info) ^(′), Φ_(info) ^(″), Ψ,. 8, rows corresponding toΦ_(info) ^(′) are indicated in the generator matrix G_(n) for the codecorresponding to the first packet, and rows corresponding to Ψ areindicated in the generator matrix G_(ñ) for the mother code. FIG. 11shows an example, wherein a number of elements of Φ_(info) is given asL′=2, and wherein a number of elements of Ψ is given as L=7.

(Step 2): L′ number of elements are selected from set Ψ having L numberof elements, and, then, the selected L′ number of elements are aligned.Herein, a set of the selected L′ number of specific elements that arealigned is indicated as μ. In the left side drawing of FIG. 9, suchselected rows are indicated by referential numeral 910.

(Step 3): The rows corresponding to the selected number of elementswithin the mother code are used to replace the rows corresponding toΦ_(info) ^(′). The right side drawing of FIG. 9 shows the replacement ofsuch rows.

(Step 4): A generator matrix n×ñ is configured by selecting a last ncolumn of the generator matrix, which is configured in (Step 3).Thereafter, only n number of columns are selected and aligned, therebyconfiguring a new generator matrix having the size of n×n. Herein, a setof the selected and aligned specific n number of columns is indicated asθ. FIG. 10 shows such column selection.

(Step 5): XOR operation is performed on each element of the generatormatrix G_(n) corresponding to the code of the initial first packet,which is used in (Step 1), and the n×n generator matrix, which isconfigured in (Step 4). Subsequently, an OR operation is performed foreach column for the n×n matrix, which is obtained by the operation. As aresult, a 1×n row is obtained, and this row is indicated as z. In theobtained row z, if an element corresponds to 0, a column correspondingto a position of the element indicates a received signal, which can bere-used in the first packet. And, if an element corresponds to 1, acolumn corresponding to a position of the element indicates a receivedsignal, which cannot be re-used in the first packet. FIG. 11 illustratesthis operation process.

(Step 6): The efficiency ε^((μ,θ).) is calculated by using the methodshown below.

$\begin{matrix}{ɛ^{({\mu,\theta})} = {\frac{n - {{weight}(z)}}{n} \times 100\%}} & \left\lbrack {{Equation}\mspace{14mu} 12} \right\rbrack\end{matrix}$

Herein, weight(z) indicates a Hamming weight of a column vector z. FIG.11 shows an example in which z=[0, 0, 1, 0, 1, 1]. In this example, itis given that weight(z)=3.

Additionally, an average error likelihood P_(b) ^((μ)) of bit channelsfor the information bits corresponding to set μ. of the specific rowsthat are currently being used is calculated. Herein, since θ influencesonly the efficiency and does not influence the error likelihood of theaverage information bits, although the efficiency is indicated by afunction of μ. and θ, the average error likelihood is indicated only afunction of μ.

(Step 7): The process is returned to (Step 4), and then (Step 5) and(Step 6) are repeated for all possible cases of column selection. Morespecifically, (Step 5) and (Step 6) are repeated by considering allpossible θ values, and the number of all possible θ values is given as

$\begin{pmatrix}\hat{n} \\n\end{pmatrix} \times {{n!}.}$

The average error likelihood is calculated with the given efficiency forthe total number of possible cases of column selection, and specific θvalues providing minimum likelihood at the same efficiency arecalculated. Alternatively, a θ value providing maximum efficiency forthe same error likelihood is calculated.

(Step 8): The process is returned to (Step 2), and then (Step 3) to(Step 7) are repeated for all possible cases of row selection. Morespecifically, (Step 3) to (Step 7) are repeated by considering allpossible μ. values, and the number of all possible μ. values is given as

$\begin{pmatrix}\hat{L} \\L^{\prime}\end{pmatrix} \times {{L^{\prime}!}.}$

The average error likelihood is calculated with the given efficiency forthe total number of possible cases of row selection, and specific μ.values providing minimum likelihood at the same efficiency arecalculated. Alternatively, a μ. value providing maximum efficiency forthe same error likelihood is calculated.

FIG. 12 is a graph showing a comparison between Method 2, Method 3, andan optimal method having an optimal tradeoff in light of performance andefficiency.

If an optimal transmission method is obtained by using theabove-described method, a transmission method having a tradeoff such asa “best tradeoff curve” shown in FIG. 12 may be implemented.

2.3. A Suboptimal Transmission Method in a Case where the Mother Codehas a Random Length

The optimal transmission method that is developed in the above-describedsection provides an optimal tradeoff in light of error performance andefficiency. However, in order to obtain the methods corresponding to thepoints positioned on the optimal tradeoff curve, all likelihood ofcolumn selection (wherein the total number of cases corresponds to

$\left. {\begin{pmatrix}\hat{n} \\n\end{pmatrix} \times {n!}} \right)$

and all likelihood of row selection (wherein the total number of casescorresponds to

$\left. {\begin{pmatrix}\hat{L} \\L^{\prime}\end{pmatrix} \times {L^{\prime}!}} \right)$

should be considered. Such calculation of all possible cases is notrequired to be carried out in real-time. Accordingly, an optimaltransmission method may be calculated in advance by using a sufficientamount of time and calculation. Thereafter, only the final transmissionmethod may be stored in the system. Nevertheless, if the ñ, n, L, L′values still remain insufficiently reduced (i.e., not small enough),there may still remain a large number of cases that need to beconsidered. And, eventually, due to a considerably high level ofcomplexity, it may be difficult to actually perform all of theoperations, even though the operations are not performed in real-time.In order to resolve such problems, methods having reduced level ofcomplexity are proposed in the following section.

2.3.1. A Case where a Length of the Mother Code is Equal to Two Timesthe Length of the First Packet

In this section, a case where the length of the mother code is two timesthe length of the first packet is considered, i.e., a case where ñ=2n isconsidered. This case corresponds to a very important case even in anactual transmission environment. This is because the length of theoptimal polar code is equal to an exponential power of 2.

In the case where ñ=2n, the level of complexity for performing rowselection may be reduced significantly. More specifically, an optimal θmay be obtained at a considerably low level of complexity. The essentialidea of this method relates to calculating only a correlation betweenrows being replaced by other rows and the other rows that replace theexisting rows within the generator matrices of the polar code, insteadof calculating the efficiency by performing a comparison between twodifferent matrices. The actual implementation may be achieved asdescribed below.

Firstly, (Step 1) to (Step 3) are the same as the method proposed in theprevious section. Thereafter, instead of comparing the two matrices, acorrelation between selected rows that replace existing rows and theexisting rows that are being replaced is calculated. For this (Step 4)is modified (or varied) as described below.

FIG. 13 illustrates an example of a suboptimal transmission method incase of a mother code having a random length (Step 4).

FIG. 14 illustrates an example of a suboptimal transmission method incase of a mother code having a random length (Step 5).

(Step 4): Rows that are to be replaced are separated from the generatormatrix G of the first packet. This concept is shown in a lower part ofFIG. 13. At this point, the separated rows are repeated two times,thereby creating rows having a length of 2n. These separated rows areindicated by referential numeral 1320. Additionally, in the generatormatrix of the mother code, only the rows that are selected from Ψ areseparated. This concept is shown in an upper part of FIG. 13. Theseseparated rows are indicated by referential numeral 1310.

(Step 5): Firstly, an XOR operation is carried out for each elementbetween the two groups of rows that are separated in (Step 4).Thereafter, an OR operation is carried out for each column. Finally, anAND operation is carried out between the two 1×n rows that are obtained.As a result, a 1×n row is obtained, if an element corresponds to 0, acolumn corresponding to a position of the element indicates a receivedsignal, which can be re-used in the first packet. And, if an elementcorresponds to 1, a column corresponding to a position of the elementindicates a received signal, which cannot be re-used in the firstpacket. FIG. 14 illustrates this operation process.

Subsequently, (Step 6) is the same as the above-described optimalmethod. However, this method does not require (Step 7), whereinrepetitive operation is performed for all possible column selection.Accordingly, the level of complexity becomes significantly reduced atthis point. (Step 8) is the same as the above-described optimal method.

2.3.2. A Method for Reducing a Level of Complexity in Row Selection

This section describes a suboptimal method for reducing the level ofcomplexity that is related with row selection. In (Step 8) of theoriginal optimal method, the process returns to (Step 2) so as toconsider all number of cases for the selection of all possible

$\begin{pmatrix}\hat{L} \\L^{\prime}\end{pmatrix} \times {L^{\prime}!}$

number of rows. However, in this case, since the level of complexity isgenerally excessively high, it may be difficult to actually implementthis process step. In order to resolve such problems, operation isperformed only for the row selection cases that are actually useful.

FIG. 15 illustrates an example of a suboptimal transmission methodselecting 3 rows from 5 rows.

For example, as shown in FIG. 15, a case Ψ where has 5 elements, i.e., 5possible rows, and Φ_(info) ^(′) has 3 elements, i.e., 3 rows, isconsidered. In this case, the total number of possible row selections isgiven as

$\begin{pmatrix}5 \\3\end{pmatrix} \times {{3!}.}$

Instead of performing operation for all cases, the amount of calculationmay be sufficiently reduced by using a suboptimal method.

FIG. 16 illustrates an example of a suboptimal transmission methodselecting 3 rows from 5 rows.

The method that is proposed in the present invention is shown in FIG.16. Firstly, as shown in a right side drawing of FIG. 16, the rowsbelonging to Φ_(info) ^(′) are aligned in an increasing order startingfrom the poor bit channels corresponding to each row. Although this stepis not a necessarily required step, by aligning the rows according tothis method, the likelihood of performing a more advantageous (orfavorable) row selection may be provided to the rows corresponding tothe bit channels having more disadvantageous (or poorer) errorlikelihood. Thus, an overall enhancement in performance may be expected.The proposed method is operated as described below. Firstly, the totalnumber of possible rows that can replace ϕ₁ ^(′), which indicates afirst row to which Φ_(info) ^(′) belongs, is equal to 5. However,instead of considering all of these rows, only a small number of rowshaving the highest correlation with row ϕ₁ ^(′) will be consideredherein. In FIG. 16, 3 rows are selected from Ψ. Thereafter, for eachcase of the selected ϕ₁ ^(′), the total number of possible rows that canreplace ϕ₂ ^(′) is equal to 4. However, instead of considering all ofthese rows, once again, only a small number of rows will be consideredherein. In FIG. 16, once again, 3 rows are selected from Ψ. By usingthis method, once again, only 3 rows will be considered as the number ofpossible rows that can replace ϕ₃ ^(′).

FIG. 17 illustrates an example of a suboptimal transmission methodselecting 3 rows from 5 rows.

FIG. 17 shows the above-described suboptimal row selection method in atree structure. In FIG. 17, a mother node indicates a correlationbetween two generator matrices excluding the rows belonging to Φ_(info)^(′) and the rows belonging to Ψ. The tree structure of FIG. 17corresponds to a matrix format having a size of 3×5 and having nodesdistributed therein. Generally, the nodes are distributed in a matrixformat having a size of L′×L. Herein, a (i, j)^(th) node indicates acorrelation between an i^(th) row belonging to Φ_(info) ^(′) and aj^(th) row belonging to Ψ. A first step corresponds to a step ofdetermining a row that replaces ϕ₁ ^(′). At this point, all of the 5possible cases are indicated as 5 possible branches. In the suboptimalmethod that is proposed in the present invention, only M=3 branches areselected instead of 5 branches. Listed below are several referencestandards that can be used when selecting the M number of branches, asdescribed above.

M number of branches having a maximum correlation between the rows areselected.

Among the rows having an average error likelihood that is less than orequal to a predetermined standard, M number of branches are selected inorder to maximize the correlation between the rows.

M number of branches are selected in order to minimize the errorlikelihood.

M number of branches are selected in order to minimize the errorlikelihood while allowing the correlation between the rows to be equalto or greater than a predetermined standard.

In the second step, a total of 5×4=20 branches initially exist. However,not all of these branches are selected. Firstly, since 4 branches areconnected to each of the M number of branches that are selected in thefirst step, the number of possible branches is equal to 4M=4×3=12. Asdescribed above, among the 12 branches, M=3 number of branches are onceagain selected. Such selection may be performed by using any one of theabove-described several reference standards. Finally, in the third step,a total of 5×4×3=60 branches initially exist. However, not all of thesebranches are selected. Firstly, since 3 branches are connected to eachof the M number of branches that are selected in the first step and thesecond step, the number of possible branches is equal to 3M=3×3=9. Asdescribed above, among the 9 branches, M=3 number of branches are onceagain selected.

Such selection may be performed by using any one of the above-describedmultiple reference standards. In this example, although it is describedthat the same M number of branches, wherein M=3, are selected in all ofthe process steps, in an actual application, a different number ofbranches may be selected. More specifically, in the k^(th) step, M_(k)number of branches may be selected.

2.3.3. A Method for Reducing a Level of Complexity in Column Selection

FIG. 18 illustrates an example of a suboptimal transmission methodselecting n number of rows ñ from number of rows.

This section proposes a method for reducing the level of complexity thatis related to column selection. FIG. 18 shows a case of selecting nnumber of rows from ñ number of rows. In order to efficiently performsuch column selection, a tree structure diagram may be used just as inthe previous section.

FIG. 19 illustrates a tree structure for efficiently selecting a column.

The tree structure for a column selection is shown in FIG. 19. The treestructure that is given in FIG. 19 corresponds to a structure having asize of n×ñ. A (i, j)^(th) node indicates a correlation between ani^(th) column of the generator matrix G_(n) corresponding to the firstpacket and a j^(th) column of a n×ñ sub-matrix, which is obtained byselecting a last n row of the generator matrix G_(ñ) corresponding tothe mother code. In a first step of the tree structure, ñ number ofbranches exist, and this indicates that one column is selected ñ fromnumber of columns and that the selected one column is then mapped to afirst column of a sub-packet. In a second step for each branch of thefirst step, ñ−1 number of branches exist, and, therefore, a total ofñ×(ñ−1) number of branches exist. By using the above-described method,in an n^(th) step, a total of ñ×(ñ−1)×(ñ×(ñ−n+1)number of branchesexist. This number of branches is indicated as

${\begin{pmatrix}\hat{n} \\n\end{pmatrix} \times {n!}},$

and the level of complexity in this case is generally considerably high.In order to reduce such high level of complexity, in each step, only Mnumber of branches are selected. At this point, M number of brancheshaving maximum correlation are selected in each step. More generally,different M_(k) number of branches may be selected in each step.

2.3.4. A Method for Reducing a Level of Complexity when Row Selectionand Column Selection are Performed Simultaneously

In this section, a method for simultaneously performing row selectionand column selection will be described by using a tree structure. Thetree structure corresponds to a matrix format having a size of L′×L andhaving nodes distributed therein. Herein, a (i, j)^(th) node indicates acorrelation between an i^(th) row belonging to Ψ_(info) ^(′) and aj^(th) row belonging to Ψ. The above-described processes are the same asthe tree structure of the method for reducing the level of complexity ofa row selection. However, the tree structure in this section isdifferent in that, instead of having nodes that are connected to oneanother by being connected to one branch, the nodes are connected to oneanother by being connected to a set including multiple branches. Herein,the multiple branches indicate multiple possible column selection. Thisconcept is shown in FIG. 20.

FIG. 20 illustrates a tree structure for efficiently selecting row and acolumn simultaneously.

FIG. 20 shows a set of column selections being used at a part where a(m, j)^(th) node and a (m+1, j)^(th) node are connected. The same columnselection should be used in each packet, which starts from an uppermostnull row node and ends at a lowermost node. For this, the followingcondition must be satisfied.

Ω_(i,j) ^((m))⊇Ω_(j,k) ^((m+1)), ∀i,j,k,m   [Equation 13]

In a k^(th) step a total of M_(k)=Σ_(i,j)|Ω_(i,j) ^((k))| branches areselected.

Section 3: Generalization of the Proposed Methods 3.1. The GeneralizedMethod 2, Method 3, and Optimal Method

In the above-described sections, the essential idea of ‘Method 2’,“Method 3’, and the ‘optimal method’ is first to puncture the mothercode, and, then, after obtaining a first packet, performing optimalinformation bit allocation in the viewpoint of the first packet. In theactual communication environment, the size of the first packet may bedetermined to be of any size as long as the first packet satisfiescondition of including all of the information bits is satisfied. Amethod of implementing Method 2, Method 3, and the optimal method toachieve the best performance relates to considering all possible sizesof the first packet, locating in advance the positions of the optimalinformation bit allocation for each size, storing the located positionsin a memory of the system, and using the stored positions when needed.Thus, when the system is implemented, a best performance may beachieved. However, in the actual system, due to the level of complexity,limitations in the memory, and so on, it may be difficult to store inadvance the positions of the optimal information bit allocation for allof the possible sizes of the first packet. In this case, by consideringin advance only the cases corresponding to specific sizes of the firstpacket (this does not refer to all possible cases), only the positionsof optimal information bit allocation for the considered cases arestored in the memory. In this case, in the actual communicationenvironment, in case the size of the first packet is determined to beequal to a random value, the system uses the optimal information bitallocation, which is stored for a packet having the most similar size asthe randomly determined size of the first packet. In case the actualpacket size and the size of the packet having its optimal informationbit allocation stored in the system are different from one another, thebest performance may not be achieved. However, if the difference in sizeis not significant, the performance degradation may not be significant.Furthermore, by using the above-described method, the level ofcomplexity or the required size of the memory in the system may bereduced.

3.2. Case of a HARQ where the Mother Code is Punctured and Divided intotwo or More Packets and then Transmitted

In the above-described sections, for simplicity in the description, aHARQ, wherein the mother code is punctured and divided into two packetsand then transmitted, was considered. Herein, a method having an optimaltradeoff between error likelihood and efficiency. This method may alsobe applied to a case of a HARQ, where the mother code is punctured anddivided into two or more packets and then transmitted. In this case, themethod proposed in the present invention may be applied between twopackets that are transmitted while being adjacent to one another. Forexample, a case where the mother code is divided into 3 packets will beconsidered. In this case, an optimal transmission method may bedeveloped by applying the method, which is developed in the previoussection, between the first packet and the second packet. Thereafter, anoptimal transmission method may be developed by applying the method,which is developed in the previous section, between the second packetand the third packet. By performing this method, in case the mother codeis divided into a random N number of packets, by repeatedly using themethod, which is proposed in the previous section, for N−1 number oftimes, an optimal transmission method may be proposed.

An overall method for performing HARQ by using a polar code having arandom length may hereinafter be described in detail.

A transmitter generates a mother bit sequence having a size of M that isto be transmitted to a receiver. The mother bit sequence includesinformation bits that are intended to be transmitted to the receiver andfrozen bits that are defined advance between the transmitter and thereceiver.

The transmitter punctures a mother code so as to acquire a first inputbit sequence having a random length of M. The transmitter calculates amutual information size based on a likelihood distribution of a LogLikelihood Ratio (LLR) for the mother bit sequence, and, then, thetransmitter may puncture the mother bit sequence so as to reduce anyloss in the calculated mutual information size. At this point, thelikelihood distribution of the LLR may be calculated by using Gaussianapproximation. In this case, a ratio (i.e., transmission rate (ortransfer rate)) between the information bits and frozen bits beingincluded in the first bit sequence may be set up (or configured) by anindication signal, which is received in advance, or the correspondingratio may be pre-configured in advance.

The transmitter determines the positions of the information bits and thefrozen bits, so as to maximize the distribution of the channel capacityand/or mutual information size for the information bits and the frozenbits.

Thereafter, the transmitter generates the first input bit sequence to afirst output bit sequence by a first encoder and transmits the generatedfirst output bit sequence to the receiver. If a re-transmission request(i.e., NACK) is received from the receiver, the transmitter obtains asecond input bit sequence from the mother bit sequence. Thereafter, thetransmitter obtains a third input bit sequence that does not require anyre-transmission from the obtained second input bit sequence. Finally,the transmitter generates the third input bit sequence to a secondoutput bit sequence by a second encoder and transmits the generatedsecond output bit sequence to the receiver.

FIG. 21 is a block diagram illustrating a wireless communication systemin which the present disclosure is implemented.

The transmitter (2100) includes a processor (2110), a memory (2120), anda radio frequency (RF) unit (2130). The memory (2120) is connected tothe processor (2110) to store various information for driving theprocessor (2110). The RF unit (2130) is connected to the processor(2110) to transmit and/receive a wireless signal. The processor (2110)implements a suggested function, procedure, and/or method. An operationof the transmitter according to the above embodiment may be implementedby the processor (2110).

The receiver (2150) includes a processor (2160), a memory (2170), and anRF unit (2180). The memory (2170) is connected to the processor (2160)to store various information for driving the processor (2160). The RFunit (2180) is connected to the processor (2160) to transmit and/receivea wireless signal. The processor (2160) implements a suggested function,procedure, and/or method.

A processor may include an application-specific integrated circuit(ASIC), another chipset, a logic circuit, and/or a data processor. Amemory may include read-only memory (ROM), random access memory (RAM), aflash memory, a memory card, a storage medium, and/or other storagedevices. An RF unit may include a baseband circuit to process an RFsignal. When the embodiment is implemented, the above scheme may beimplemented by a module (procedure, function, and the like) to performthe above function. The module is stored in the memory and may beimplemented by the processor. The memory may be located inside oroutside the processor, and may be connected to the processor throughvarious known means.

In the above exemplary system, although methods are described based on aflowchart including a series of steps or blocks, the present inventionis limited to an order of the steps. Some steps may be generated in theorder different from or simultaneously with the above other steps.Further, it is well known to those skilled in the art that the stepsincluded in the flowchart are not exclusive but include other steps orone or more steps in the flowchart may be eliminated without exerting aninfluence on a scope of the present invention.

What is claimed is:
 1. A method for performing a Hybrid Automatic RepeatreQuest (HARQ) based on a polar code, comprising: acquiring, by atransmitter, a plurality of first input bits being inputted to a firstencoder from a plurality of mother bits having at least one informationbit and at least one frozen bit; transmitting, by the transmitter to areceiver, a plurality of first output bits being generated from thefirst input bits by the first encoder; receiving, by the transmitter, are-transmission request for the plurality of mother bits from thereceiver; acquiring, by the transmitter, a plurality of second inputbits being inputted to a second encoder from the plurality of motherbits; generating, by the transmitter, a plurality of second output bitsbeing generated from the second input bits by the second encoder;selecting, by the transmitter, a plurality of third output bits from theplurality of second output bits; and transmitting, by the transmitter,the plurality of third output bits to the receiver, wherein theplurality of second input bits include at least one information bitbeing included in the plurality of first input bits, and wherein, amongthe plurality of second output bits, bits being encoded differently fromthe plurality of first input bits are preferentially selected as thethird output bits.
 2. The method of claim 1, wherein, within theplurality of first input bits, the information bit is positioned to aposition having a better channel quality for the first encoder ascompared to the frozen bit, and wherein, within the plurality of secondinput bits, the information bit is positioned to a position having abetter channel quality for the second encoder as compared to the frozenbit.
 3. The method of claim 1, wherein the first encoder generates theplurality of first output bits by performing exclusive OR (XOR)operation between the plurality of first input bits, and wherein thesecond encoder generates the plurality of second output bits byperforming XOR operation between the plurality of second input bits 4.The method of claim 3, wherein, among the plurality of second outputbits, bits being processed with XOR operation that are different fromthe plurality of first output bits or bits being processed with a numberof XOR operations that is different from the plurality of first outputbits are preferentially selected as the plurality of third output bits.5. The method of claim 4, wherein, among the plurality of second outputbits, bits being processed with XOR operation that are the same as theplurality of first output bits and bits being processed with a number ofXOR operations that is the same as the plurality of first output bitsare preferentially excluded from being selected as the plurality ofthird output bits.
 6. The method of claim 1, wherein the plurality offirst input bits do not include the at least one frozen bit, and theplurality of second input bits include the at least one frozen bit. 7.The method of claim 1, wherein the first encoder performs encoding basedon a first generator matrix, and the second encoder performs encodingbased on a second generator matrix, and wherein the second generatormatrix has a greater size than the first generator matrix.
 8. The methodof claim 7, wherein the first generator matrix and the second generatormatrix are acquired by puncturing a same mother matrix.
 9. The method ofclaim 7, wherein the second generator matrix corresponds to an 8 by 8matrix, and the first generator matrix corresponds to a 4 by 4 matrix.10. A device for performing a Hybrid Automatic Repeat request (HARQ)based on a polar code, comprising: a radio frequency (RF) unittransmitting and receiving radio signals; and a processor controllingthe RF unit and including a first encoder and a second encoder, whereinthe processor is configured to: acquire a plurality of first input bitsbeing inputted to a first encoder from a plurality of mother bits havingat least one information bit and at least one frozen bit, transmit aplurality of first output bits being generated from the first input bitsby the first encoder to a receiver, receive a re-transmission requestfor the plurality of mother bits from the receiver, acquire a pluralityof second input bits being inputted to a second encoder from theplurality of mother bits, generate a plurality of second output bitsbeing generated from the second input bits by the second encoder, selecta plurality of third output bits from the plurality of second outputbits, and transmit the plurality of third output bits to the receiver,wherein the plurality of second input bits include at least oneinformation bit being included in the plurality of first input bits, andwherein, among the plurality of second output bits, bits being encodeddifferently from the plurality of first input bits are preferentiallyselected as the third output bits.
 11. The device of claim 10, wherein,within the plurality of first input bits, the information bit ispositioned to a position having a better channel quality for the firstencoder as compared to the frozen bit, and wherein, within the pluralityof second input bits, the information bit is positioned to a positionhaving a better channel quality for the second encoder as compared tothe frozen bit.
 12. The device of claim 10, wherein the first encodergenerates the plurality of first output bits by performing exclusive OR(XOR) operation between the plurality of first input bits, and whereinthe second encoder generates the plurality of second output bits byperforming XOR operation between the plurality of second input bits 13.The device of claim 12, wherein, among the plurality of second outputbits, bits being processed with XOR operation that are different fromthe plurality of first output bits or bits being processed with a numberof XOR operations that is different from the plurality of first outputbits are preferentially selected as the plurality of third output bits.14. The device of claim 13, wherein, among the plurality of secondoutput bits, bits being processed with XOR operation that are the sameas the plurality of first output bits and bits being processed with anumber of XOR operations that is the same as the plurality of firstoutput bits are preferentially excluded from being selected as theplurality of third output bits.
 15. The device of claim 10, wherein theplurality of first input bits do not include the at least one frozenbit, and the plurality of second input bits include the at least onefrozen bit.